1425

7 分钟

#Lua 的 while 循环语句

循环语句是一种让程序重复执行一段代码的控制结构。

Lua 的 while 循环语句语法结构为:

while 条件 do 代码块 end
  • 判断“条件”是否为 true
    • 如果为 true 则执行循环体,然后进入下一轮循环
    • 如果为 false 则结束循环

开始

循环条件?

循环体

结束

示例:

local i = 5 while i > 0 do -- 当 i 大于 0 时执行循环 print("当前 i 的值为", i) i = i - 1 -- 将 i 的值减少 1 end

运行结果:

当前 i 的值为 5 当前 i 的值为 4 当前 i 的值为 3 当前 i 的值为 2 当前 i 的值为 1

#break

break 用于用于终止当前循环(包括 while 以外的循环),继续执行循环之后的代码。

示例:

local i = 10 while i > 0 do -- 当 i 大于 0 时执行循环 if i == 5 then break -- 提前结束循环 end print("当前 i 的值为", i) i = i - 1 -- 将 i 的值减少 1 end

运行结果:

当前 i 的值为 10 当前 i 的值为 9 当前 i 的值为 8 当前 i 的值为 7 当前 i 的值为 6

#goto

goto 可以将程序的执行跳转到指定的位置。

语法为:

goto 标签

其中标签的定义方式为两对冒号:

::标签::

和大多数编程语言不同, Lua 不支持 continue,下面的示例通过 goto 实现类似的功能:

local i = 10 while i > 0 do -- 当 i 大于 0 时执行循环 if i % 2 == 0 then goto continue -- 跳转到 continue 标签位置 end print("当前 i 的值为", i) ::continue:: i = i - 1 -- 将 i 的值减少 1 end

运行结果:

当前 i 的值为 9 当前 i 的值为 7 当前 i 的值为 5 当前 i 的值为 3 当前 i 的值为 1

创建于 2025/9/28

更新于 2025/9/28